﻿using Mjolnir.InfraEstrutura.Servicos;

namespace Mjolnir.Modelo.Ponteiros
{
  public class ServicoPonteiroInteiro : ServicoBase<PonteiroInteiro, FabricaPonteiroInteiro>, IServicoPonteiroInteiro
  {
    /// <summary>
    /// Criar array.
    /// </summary>
    /// <param name="numero">numero.</param>
    /// <returns></returns>
    public PonteiroInteiro[] criarArray(int numero)
    {
      PonteiroInteiro[] retorno = fabrica.criar(numero);

      for (int i = 0; i < numero; i++)
      {
        retorno[i] = fabrica.criar();
      }

      return retorno;
    }

    /// <summary>
    /// Copiar array.
    /// </summary>
    /// <param name="de">de.</param>
    /// <param name="para">para.</param>
    public void copiarArray(ref PonteiroInteiro[] de, ref PonteiroInteiro[] para)
    {
      for (int i = de.Length - 1; i >= 0; i--)
      {
        para[i].x = de[i].x;
        para[i].y = de[i].y;
      }
    }
  }
}
